package com.dianrui.firemenmonitor.util;

import android.graphics.Color;

import com.baidu.mapapi.map.BitmapDescriptor;
import com.baidu.mapapi.map.BitmapDescriptorFactory;
import com.baidu.mapapi.map.LogoPosition;
import com.baidu.mapapi.map.MapView;
import com.baidu.mapapi.map.Overlay;
import com.baidu.mapapi.map.OverlayOptions;
import com.baidu.mapapi.map.Polyline;
import com.baidu.mapapi.map.PolylineOptions;
import com.baidu.mapapi.model.LatLng;
import com.dianrui.firemenmonitor.R;

import java.util.ArrayList;
import java.util.List;

public class BaiduUtils {

    /**
     * 定制地图UI控件
     *
     * @param mapView
     */
    public static void initUI(MapView mapView) {
        //地图Logo共支持6个显示位置(左下，中下，右下，左上，中上，右上)。
        mapView.setLogoPosition(LogoPosition.logoPostionleftBottom);
        mapView.getMap().getUiSettings().setCompassEnabled(false);
        mapView.getMap().getUiSettings().setOverlookingGesturesEnabled(false);
        mapView.getMap().getUiSettings().setRotateGesturesEnabled(false);
        //显示比例尺
        mapView.showScaleControl(false);
        //设置是否允许楼块效果
        mapView.getMap().setBuildingsEnabled(false);
        //最大缩放和最小缩放
        mapView.getMap().setMaxAndMinZoomLevel(21, 4);
        //缩放按钮是否显示
        mapView.showZoomControls(false);
    }
    public static Polyline drawline(MapView mapView, List<LatLng> points) {

        //绘制折线
        OverlayOptions ooPolyline = new PolylineOptions().width(8)
                .color(Color.BLUE).points(points);
        return (Polyline) mapView.getMap().addOverlay(ooPolyline);
    }


    //画带图片的线
    public static Overlay drawliness(MapView mapView, List<LatLng> points) {

        List<BitmapDescriptor> textureList = new ArrayList<>();
        textureList.add(BitmapDescriptorFactory.fromResource(R.mipmap.road_img));

        List<Integer> textureIndexs = new ArrayList<Integer>();
        textureIndexs.add(0);

        OverlayOptions ooPolyline11 = new PolylineOptions()
                .width(12)
                .points(points)
                .dottedLine(true)
                .customTextureList(textureList)
                .textureIndex(textureIndexs);
        return  mapView.getMap().addOverlay(ooPolyline11);
    }
}
